<!DOCTYPE html>
<html lang="en">
  <head>
    <title>IGListAdapterUpdaterDelegate Protocol Reference</title>
    <link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
    <link rel="stylesheet" type="text/css" href="../css/highlight.css" />
    <meta charset='utf-8'>
    <script src="../js/jquery.min.js" defer></script>
    <script src="../js/jazzy.js" defer></script>
    
    <script src="../js/lunr.min.js" defer></script>
    <script src="../js/typeahead.jquery.js" defer></script>
    <script src="../js/jazzy.search.js" defer></script>
  </head>
  <body>
    <a name="//apple_ref/objc/Protocol/IGListAdapterUpdaterDelegate" class="dashAnchor"></a>
    <a title="IGListAdapterUpdaterDelegate Protocol Reference"></a>
    <header>
      <div class="content-wrapper">
        <p><a href="../index.html">IGListKit 4.1.0 Docs</a> (93% documented)</p>
        <p class="header-right"><a href="https://github.com/Instagram/IGListKit"><img src="../img/gh.png" alt="GitHub"/>View on GitHub</a></p>
        <div class="header-right">
          <form role="search" action="../search.json">
            <input type="text" placeholder="Search documentation" data-typeahead>
          </form>
        </div>
      </div>
    </header>
    <div class="content-wrapper">
      <p id="breadcrumbs">
        <a href="../index.html">IGListKit Reference</a>
        <img id="carat" src="../img/carat.png" alt=""/>
        IGListAdapterUpdaterDelegate Protocol Reference
      </p>
    </div>
    <div class="content-wrapper">
      <nav class="sidebar">
        <ul class="nav-groups">
          <li class="nav-group-name">
            <a href="../Guides.html">Guides</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a href="../best-practices-and-faq.html">Best Practices and FAQ</a>
              </li>
              <li class="nav-group-task">
                <a href="../generating-your-models-using-remodel.html">Generating your models using remodel</a>
              </li>
              <li class="nav-group-task">
                <a href="../getting-started.html">Getting Started</a>
              </li>
              <li class="nav-group-task">
                <a href="../iglistdiffable-and-equality.html">IGListDiffable and Equality</a>
              </li>
              <li class="nav-group-task">
                <a href="../installation.html">Installation</a>
              </li>
              <li class="nav-group-task">
                <a href="../migration.html">Migration</a>
              </li>
              <li class="nav-group-task">
                <a href="../modeling-and-binding.html">Modeling and Binding</a>
              </li>
              <li class="nav-group-task">
                <a href="../vision.html">VISION</a>
              </li>
              <li class="nav-group-task">
                <a href="../working-with-core-data.html">Working with Core Data</a>
              </li>
              <li class="nav-group-task">
                <a href="../working-with-uicollectionview.html">Working with UICollectionView</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a href="../Classes.html">Classes</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a href="../Classes/IGListAdapter.html">IGListAdapter</a>
              </li>
              <li class="nav-group-task">
                <a href="../Classes/IGListAdapterUpdater.html">IGListAdapterUpdater</a>
              </li>
              <li class="nav-group-task">
                <a href="../Classes/IGListBatchUpdateData.html">IGListBatchUpdateData</a>
              </li>
              <li class="nav-group-task">
                <a href="../Classes/IGListBindingSectionController.html">IGListBindingSectionController</a>
              </li>
              <li class="nav-group-task">
                <a href="../Classes/IGListCollectionView.html">IGListCollectionView</a>
              </li>
              <li class="nav-group-task">
                <a href="../Classes/IGListCollectionViewLayout.html">IGListCollectionViewLayout</a>
              </li>
              <li class="nav-group-task">
                <a href="../Classes/IGListGenericSectionController.html">IGListGenericSectionController</a>
              </li>
              <li class="nav-group-task">
                <a href="../Classes/IGListIndexPathResult.html">IGListIndexPathResult</a>
              </li>
              <li class="nav-group-task">
                <a href="../Classes/IGListIndexSetResult.html">IGListIndexSetResult</a>
              </li>
              <li class="nav-group-task">
                <a href="../Classes/IGListMoveIndex.html">IGListMoveIndex</a>
              </li>
              <li class="nav-group-task">
                <a href="../Classes/IGListMoveIndexPath.html">IGListMoveIndexPath</a>
              </li>
              <li class="nav-group-task">
                <a href="../Classes.html#/c:objc(cs)IGListReloadDataUpdater">IGListReloadDataUpdater</a>
              </li>
              <li class="nav-group-task">
                <a href="../Classes/IGListSectionController.html">IGListSectionController</a>
              </li>
              <li class="nav-group-task">
                <a href="../Classes/IGListSingleSectionController.html">IGListSingleSectionController</a>
              </li>
              <li class="nav-group-task">
                <a href="../Classes/IGListTransitionData.html">IGListTransitionData</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a href="../Constants.html">Constants</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a href="../Constants.html#/c:@IGListKitVersionNumber">IGListKitVersionNumber</a>
              </li>
              <li class="nav-group-task">
                <a href="../Constants.html#/c:@IGListKitVersionString">IGListKitVersionString</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a href="../Enums.html">Enumerations</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a href="../Enums/IGListAdapterUpdateType.html">IGListAdapterUpdateType</a>
              </li>
              <li class="nav-group-task">
                <a href="../Enums/IGListDiffOption.html">IGListDiffOption</a>
              </li>
              <li class="nav-group-task">
                <a href="../Enums/IGListExperiment.html">IGListExperiment</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a href="../Protocols.html">Protocols</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a href="../Protocols/IGListAdapterDataSource.html">IGListAdapterDataSource</a>
              </li>
              <li class="nav-group-task">
                <a href="../Protocols/IGListAdapterDelegate.html">IGListAdapterDelegate</a>
              </li>
              <li class="nav-group-task">
                <a href="../Protocols/IGListAdapterMoveDelegate.html">IGListAdapterMoveDelegate</a>
              </li>
              <li class="nav-group-task">
                <a href="../Protocols/IGListAdapterPerformanceDelegate.html">IGListAdapterPerformanceDelegate</a>
              </li>
              <li class="nav-group-task">
                <a href="../Protocols/IGListAdapterUpdateListener.html">IGListAdapterUpdateListener</a>
              </li>
              <li class="nav-group-task">
                <a href="../Protocols/IGListAdapterUpdaterDelegate.html">IGListAdapterUpdaterDelegate</a>
              </li>
              <li class="nav-group-task">
                <a href="../Protocols/IGListBatchContext.html">IGListBatchContext</a>
              </li>
              <li class="nav-group-task">
                <a href="../Protocols/IGListBindable.html">IGListBindable</a>
              </li>
              <li class="nav-group-task">
                <a href="../Protocols/IGListBindingSectionControllerDataSource.html">IGListBindingSectionControllerDataSource</a>
              </li>
              <li class="nav-group-task">
                <a href="../Protocols/IGListBindingSectionControllerSelectionDelegate.html">IGListBindingSectionControllerSelectionDelegate</a>
              </li>
              <li class="nav-group-task">
                <a href="../Protocols/IGListCollectionContext.html">IGListCollectionContext</a>
              </li>
              <li class="nav-group-task">
                <a href="../Protocols/IGListCollectionViewDelegateLayout.html">IGListCollectionViewDelegateLayout</a>
              </li>
              <li class="nav-group-task">
                <a href="../Protocols/IGListCollectionViewLayoutCompatible.html">IGListCollectionViewLayoutCompatible</a>
              </li>
              <li class="nav-group-task">
                <a href="../Protocols/IGListDiffable.html">IGListDiffable</a>
              </li>
              <li class="nav-group-task">
                <a href="../Protocols/IGListDisplayDelegate.html">IGListDisplayDelegate</a>
              </li>
              <li class="nav-group-task">
                <a href="../Protocols/IGListScrollDelegate.html">IGListScrollDelegate</a>
              </li>
              <li class="nav-group-task">
                <a href="../Protocols/IGListSingleSectionControllerDelegate.html">IGListSingleSectionControllerDelegate</a>
              </li>
              <li class="nav-group-task">
                <a href="../Protocols/IGListSupplementaryViewSource.html">IGListSupplementaryViewSource</a>
              </li>
              <li class="nav-group-task">
                <a href="../Protocols/IGListTransitionDelegate.html">IGListTransitionDelegate</a>
              </li>
              <li class="nav-group-task">
                <a href="../Protocols/IGListUpdatingDelegate.html">IGListUpdatingDelegate</a>
              </li>
              <li class="nav-group-task">
                <a href="../Protocols/IGListWorkingRangeDelegate.html">IGListWorkingRangeDelegate</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a href="../Type%20Definitions.html">Type Definitions</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a href="../Type%20Definitions/IGListCollectionScrollingTraits.html">IGListCollectionScrollingTraits</a>
              </li>
              <li class="nav-group-task">
                <a href="../Type%20Definitions.html#/c:IGListUpdatingDelegate.h@T@IGListCollectionViewBlock">IGListCollectionViewBlock</a>
              </li>
              <li class="nav-group-task">
                <a href="../Type%20Definitions.html#/c:IGListUpdatingDelegate.h@T@IGListDataSourceChangeBlock">IGListDataSourceChangeBlock</a>
              </li>
              <li class="nav-group-task">
                <a href="../Type%20Definitions.html#/c:IGListUpdatingDelegate.h@T@IGListItemUpdateBlock">IGListItemUpdateBlock</a>
              </li>
              <li class="nav-group-task">
                <a href="../Type%20Definitions.html#/c:IGListUpdatingDelegate.h@T@IGListObjectTransitionBlock">IGListObjectTransitionBlock</a>
              </li>
              <li class="nav-group-task">
                <a href="../Type%20Definitions.html#/c:IGListUpdatingDelegate.h@T@IGListReloadUpdateBlock">IGListReloadUpdateBlock</a>
              </li>
              <li class="nav-group-task">
                <a href="../Type%20Definitions.html#/c:IGListSingleSectionController.h@T@IGListSingleSectionCellConfigureBlock">IGListSingleSectionCellConfigureBlock</a>
              </li>
              <li class="nav-group-task">
                <a href="../Type%20Definitions.html#/c:IGListSingleSectionController.h@T@IGListSingleSectionCellSizeBlock">IGListSingleSectionCellSizeBlock</a>
              </li>
              <li class="nav-group-task">
                <a href="../Type%20Definitions.html#/c:IGListUpdatingDelegate.h@T@IGListToObjectBlock">IGListToObjectBlock</a>
              </li>
              <li class="nav-group-task">
                <a href="../Type%20Definitions.html#/c:IGListUpdatingDelegate.h@T@IGListTransitionDataApplyBlock">IGListTransitionDataApplyBlock</a>
              </li>
              <li class="nav-group-task">
                <a href="../Type%20Definitions.html#/c:IGListUpdatingDelegate.h@T@IGListTransitionDataBlock">IGListTransitionDataBlock</a>
              </li>
              <li class="nav-group-task">
                <a href="../Type%20Definitions.html#/c:IGListAdapter.h@T@IGListUpdaterCompletion">IGListUpdaterCompletion</a>
              </li>
              <li class="nav-group-task">
                <a href="../Type%20Definitions.html#/c:IGListUpdatingDelegate.h@T@IGListUpdatingCompletion">IGListUpdatingCompletion</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a href="../Functions.html">Functions</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a href="../Functions.html#/c:@F@IGListDiff">IGListDiff</a>
              </li>
              <li class="nav-group-task">
                <a href="../Functions.html#/c:@F@IGListDiffPaths">IGListDiffPaths</a>
              </li>
              <li class="nav-group-task">
                <a href="../Functions.html#/c:IGListExperiments.h@F@IGListExperimentEnabled">IGListExperimentEnabled</a>
              </li>
            </ul>
          </li>
          <li class="nav-group-name">
            <a href="../Structs.html">Structures</a>
            <ul class="nav-group-tasks">
              <li class="nav-group-task">
                <a href="../Structs/IGListCollectionScrollingTraits.html">IGListCollectionScrollingTraits</a>
              </li>
            </ul>
          </li>
        </ul>
      </nav>
      <article class="main-content">
        <section>
          <section class="section">
            <h1>IGListAdapterUpdaterDelegate</h1>
              <div class="declaration">
                <div class="language">
                  <p class="aside-title">Objective-C</p>
                  <pre class="highlight objective_c"><code><span class="k">@protocol</span> <span class="nc">IGListAdapterUpdaterDelegate</span> <span class="o">&lt;</span><span class="n">NSObject</span><span class="o">&gt;</span></code></pre>

                </div>
                <div class="language">
                  <p class="aside-title">Swift</p>
                  <pre class="highlight swift"><code><span class="kd">protocol</span> <span class="kt">ListAdapterUpdaterDelegate</span> <span class="p">:</span> <span class="kt">NSObjectProtocol</span></code></pre>

                </div>
              </div>
            <p>A protocol that receives events about <code><a href="../Classes/IGListAdapterUpdater.html">IGListAdapterUpdater</a></code> operations.</p>

          </section>
          <section class="section task-group-section">
            <div class="task-group">
              <ul>
                <li class="item">
                  <div>
                    <code>
                    <a name="/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:willDiffFromObjects:toObjects:"></a>
                    <a name="//apple_ref/objc/Method/-listAdapterUpdater:willDiffFromObjects:toObjects:" class="dashAnchor"></a>
                    <a class="token" href="#/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:willDiffFromObjects:toObjects:">-listAdapterUpdater:<wbr>willDiffFromObjects:<wbr>toObjects:<wbr></a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Notifies the delegate that the updater is about to beging diffing.</p>

                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Objective-C</p>
                          <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">listAdapterUpdater</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/IGListAdapterUpdater.html">IGListAdapterUpdater</a></span> <span class="o">*</span><span class="p">)</span><span class="nv">listAdapterUpdater</span>
       <span class="nf">willDiffFromObjects</span><span class="p">:(</span><span class="n">nullable</span> <span class="n">NSArray</span><span class="o">&lt;</span><span class="n">id</span><span class="o">&lt;</span><span class="n"><a href="../Protocols/IGListDiffable.html">IGListDiffable</a></span><span class="o">&gt;&gt;</span> <span class="o">*</span><span class="p">)</span><span class="nv">fromObjects</span>
                 <span class="nf">toObjects</span><span class="p">:(</span><span class="n">nullable</span> <span class="n">NSArray</span><span class="o">&lt;</span><span class="n">id</span><span class="o">&lt;</span><span class="n"><a href="../Protocols/IGListDiffable.html">IGListDiffable</a></span><span class="o">&gt;&gt;</span> <span class="o">*</span><span class="p">)</span><span class="nv">toObjects</span><span class="p">;</span></code></pre>

                        </div>
                      </div>
                      <div>
                        <h4>Parameters</h4>
                        <table class="graybox">
                          <tbody>
                            <tr>
                              <td>
                                <code>
                                <em>listAdapterUpdater</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The adapter updater owning the transition.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>fromObjects</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The items transitioned from in the batch updates, if any.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>toObjects</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The items transitioned to in the batch updates, if any.</p>
                                </div>
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </div>
                    </section>
                  </div>
                </li>
                <li class="item">
                  <div>
                    <code>
                    <a name="/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:didDiffWithResults:onBackgroundThread:"></a>
                    <a name="//apple_ref/objc/Method/-listAdapterUpdater:didDiffWithResults:onBackgroundThread:" class="dashAnchor"></a>
                    <a class="token" href="#/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:didDiffWithResults:onBackgroundThread:">-listAdapterUpdater:<wbr>didDiffWithResults:<wbr>onBackgroundThread:<wbr></a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Notifies the delegate that the updater finished diffing.</p>

                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Objective-C</p>
                          <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">listAdapterUpdater</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/IGListAdapterUpdater.html">IGListAdapterUpdater</a></span> <span class="o">*</span><span class="p">)</span><span class="nv">listAdapterUpdater</span>
        <span class="nf">didDiffWithResults</span><span class="p">:(</span><span class="n">nullable</span> <span class="n"><a href="../Classes/IGListIndexSetResult.html">IGListIndexSetResult</a></span> <span class="o">*</span><span class="p">)</span><span class="nv">listIndexSetResults</span>
        <span class="nf">onBackgroundThread</span><span class="p">:(</span><span class="n">BOOL</span><span class="p">)</span><span class="nv">onBackgroundThread</span><span class="p">;</span></code></pre>

                        </div>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">listAdapterUpdater</span><span class="p">(</span><span class="n">_</span> <span class="nv">listAdapterUpdater</span><span class="p">:</span> <span class="kt"><a href="../Classes/IGListAdapterUpdater.html">IGListAdapterUpdater</a></span><span class="p">,</span> <span class="n">didDiffWithResults</span> <span class="nv">listIndexSetResults</span><span class="p">:</span> <span class="kt"><a href="../Classes/IGListIndexSetResult.html">IGListIndexSetResult</a></span><span class="p">?,</span> <span class="nv">onBackgroundThread</span><span class="p">:</span> <span class="kt">Bool</span><span class="p">)</span></code></pre>

                        </div>
                      </div>
                      <div>
                        <h4>Parameters</h4>
                        <table class="graybox">
                          <tbody>
                            <tr>
                              <td>
                                <code>
                                <em>listAdapterUpdater</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The adapter updater owning the transition.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>listIndexSetResults</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The diffing result of indices to be inserted/removed/updated/moved/etc.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>onBackgroundThread</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>Was the diffing performed on a background thread</p>
                                </div>
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </div>
                    </section>
                  </div>
                </li>
                <li class="item">
                  <div>
                    <code>
                    <a name="/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:willPerformBatchUpdatesWithCollectionView:fromObjects:toObjects:listIndexSetResult:animated:"></a>
                    <a name="//apple_ref/objc/Method/-listAdapterUpdater:willPerformBatchUpdatesWithCollectionView:fromObjects:toObjects:listIndexSetResult:animated:" class="dashAnchor"></a>
                    <a class="token" href="#/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:willPerformBatchUpdatesWithCollectionView:fromObjects:toObjects:listIndexSetResult:animated:">-listAdapterUpdater:<wbr>willPerformBatchUpdatesWithCollectionView:<wbr>fromObjects:<wbr>toObjects:<wbr>listIndexSetResult:<wbr>animated:<wbr></a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Notifies the delegate that the updater will call <code>-[UICollectionView performBatchUpdates:completion:]</code>.</p>

                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Objective-C</p>
                          <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">listAdapterUpdater</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/IGListAdapterUpdater.html">IGListAdapterUpdater</a></span> <span class="o">*</span><span class="p">)</span><span class="nv">listAdapterUpdater</span>
    <span class="nf">willPerformBatchUpdatesWithCollectionView</span><span class="p">:</span>
        <span class="p">(</span><span class="n">nonnull</span> <span class="n">UICollectionView</span> <span class="o">*</span><span class="p">)</span><span class="nv">collectionView</span>
                                  <span class="nf">fromObjects</span><span class="p">:</span>
                                      <span class="p">(</span><span class="n">nullable</span> <span class="n">NSArray</span><span class="o">&lt;</span><span class="n">id</span><span class="o">&lt;</span><span class="n"><a href="../Protocols/IGListDiffable.html">IGListDiffable</a></span><span class="o">&gt;&gt;</span> <span class="o">*</span><span class="p">)</span>
                                          <span class="n">fromObjects</span>
                                    <span class="n">toObjects</span><span class="o">:</span>
                                        <span class="p">(</span><span class="n">nullable</span> <span class="n">NSArray</span><span class="o">&lt;</span><span class="n">id</span><span class="o">&lt;</span><span class="n"><a href="../Protocols/IGListDiffable.html">IGListDiffable</a></span><span class="o">&gt;&gt;</span> <span class="o">*</span><span class="p">)</span>
                                            <span class="n">toObjects</span>
                           <span class="n">listIndexSetResult</span><span class="o">:</span><span class="p">(</span><span class="n">nullable</span> <span class="n"><a href="../Classes/IGListIndexSetResult.html">IGListIndexSetResult</a></span> <span class="o">*</span><span class="p">)</span>
                                                  <span class="n">listIndexSetResults</span>
                                     <span class="n">animated</span><span class="o">:</span><span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">animated</span><span class="p">;</span></code></pre>

                        </div>
                      </div>
                      <div>
                        <h4>Parameters</h4>
                        <table class="graybox">
                          <tbody>
                            <tr>
                              <td>
                                <code>
                                <em>listAdapterUpdater</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The adapter updater owning the transition.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>collectionView</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The collection view that will perform the batch updates.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>fromObjects</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The items transitioned from in the batch updates, if any.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>toObjects</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The items transitioned to in the batch updates, if any.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>listIndexSetResults</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The diffing result of indices to be inserted/removed/updated/moved/etc.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>animated</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>Is the cell transtion animated</p>
                                </div>
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </div>
                    </section>
                  </div>
                </li>
                <li class="item">
                  <div>
                    <code>
                    <a name="/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:didPerformBatchUpdates:collectionView:"></a>
                    <a name="//apple_ref/objc/Method/-listAdapterUpdater:didPerformBatchUpdates:collectionView:" class="dashAnchor"></a>
                    <a class="token" href="#/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:didPerformBatchUpdates:collectionView:">-listAdapterUpdater:<wbr>didPerformBatchUpdates:<wbr>collectionView:<wbr></a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Notifies the delegate that the updater successfully finished <code>-[UICollectionView performBatchUpdates:completion:]</code>.</p>
<div class="aside aside-note">
    <p class="aside-title">Note</p>
    <p>This event is called in the completion block of the batch update.</p>

</div>

                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Objective-C</p>
                          <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">listAdapterUpdater</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/IGListAdapterUpdater.html">IGListAdapterUpdater</a></span> <span class="o">*</span><span class="p">)</span><span class="nv">listAdapterUpdater</span>
    <span class="nf">didPerformBatchUpdates</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/IGListBatchUpdateData.html">IGListBatchUpdateData</a></span> <span class="o">*</span><span class="p">)</span><span class="nv">updates</span>
            <span class="nf">collectionView</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">UICollectionView</span> <span class="o">*</span><span class="p">)</span><span class="nv">collectionView</span><span class="p">;</span></code></pre>

                        </div>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">listAdapterUpdater</span><span class="p">(</span><span class="n">_</span> <span class="nv">listAdapterUpdater</span><span class="p">:</span> <span class="kt"><a href="../Classes/IGListAdapterUpdater.html">IGListAdapterUpdater</a></span><span class="p">,</span> <span class="n">didPerformBatchUpdates</span> <span class="nv">updates</span><span class="p">:</span> <span class="kt">ListBatchUpdateData</span><span class="p">,</span> <span class="nv">collectionView</span><span class="p">:</span> <span class="kt">UICollectionView</span><span class="p">)</span></code></pre>

                        </div>
                      </div>
                      <div>
                        <h4>Parameters</h4>
                        <table class="graybox">
                          <tbody>
                            <tr>
                              <td>
                                <code>
                                <em>listAdapterUpdater</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The adapter updater owning the transition.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>updates</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The batch updates that were applied to the collection view.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>collectionView</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The collection view that performed the batch updates.</p>
                                </div>
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </div>
                    </section>
                  </div>
                </li>
                <li class="item">
                  <div>
                    <code>
                    <a name="/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:willInsertIndexPaths:collectionView:"></a>
                    <a name="//apple_ref/objc/Method/-listAdapterUpdater:willInsertIndexPaths:collectionView:" class="dashAnchor"></a>
                    <a class="token" href="#/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:willInsertIndexPaths:collectionView:">-listAdapterUpdater:<wbr>willInsertIndexPaths:<wbr>collectionView:<wbr></a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Notifies the delegate that the updater will call <code>-[UICollectionView insertItemsAtIndexPaths:]</code>.</p>
<div class="aside aside-note">
    <p class="aside-title">Note</p>
    <p>This event is only sent when outside of <code>-[UICollectionView performBatchUpdates:completion:]</code>.</p>

</div>

                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Objective-C</p>
                          <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">listAdapterUpdater</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/IGListAdapterUpdater.html">IGListAdapterUpdater</a></span> <span class="o">*</span><span class="p">)</span><span class="nv">listAdapterUpdater</span>
      <span class="nf">willInsertIndexPaths</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSArray</span><span class="o">&lt;</span><span class="n">NSIndexPath</span> <span class="o">*&gt;</span> <span class="o">*</span><span class="p">)</span><span class="nv">indexPaths</span>
            <span class="nf">collectionView</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">UICollectionView</span> <span class="o">*</span><span class="p">)</span><span class="nv">collectionView</span><span class="p">;</span></code></pre>

                        </div>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">listAdapterUpdater</span><span class="p">(</span><span class="n">_</span> <span class="nv">listAdapterUpdater</span><span class="p">:</span> <span class="kt"><a href="../Classes/IGListAdapterUpdater.html">IGListAdapterUpdater</a></span><span class="p">,</span> <span class="n">willInsert</span> <span class="nv">indexPaths</span><span class="p">:</span> <span class="p">[</span><span class="kt">IndexPath</span><span class="p">],</span> <span class="nv">collectionView</span><span class="p">:</span> <span class="kt">UICollectionView</span><span class="p">)</span></code></pre>

                        </div>
                      </div>
                      <div>
                        <h4>Parameters</h4>
                        <table class="graybox">
                          <tbody>
                            <tr>
                              <td>
                                <code>
                                <em>listAdapterUpdater</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The adapter updater owning the transition.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>indexPaths</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>An array of index paths that will be inserted.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>collectionView</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The collection view that will perform the insert.</p>
                                </div>
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </div>
                    </section>
                  </div>
                </li>
                <li class="item">
                  <div>
                    <code>
                    <a name="/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:willDeleteIndexPaths:collectionView:"></a>
                    <a name="//apple_ref/objc/Method/-listAdapterUpdater:willDeleteIndexPaths:collectionView:" class="dashAnchor"></a>
                    <a class="token" href="#/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:willDeleteIndexPaths:collectionView:">-listAdapterUpdater:<wbr>willDeleteIndexPaths:<wbr>collectionView:<wbr></a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Notifies the delegate that the updater will call <code>-[UICollectionView deleteItemsAtIndexPaths:]</code>.</p>
<div class="aside aside-note">
    <p class="aside-title">Note</p>
    <p>This event is only sent when outside of <code>-[UICollectionView performBatchUpdates:completion:]</code>.</p>

</div>

                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Objective-C</p>
                          <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">listAdapterUpdater</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/IGListAdapterUpdater.html">IGListAdapterUpdater</a></span> <span class="o">*</span><span class="p">)</span><span class="nv">listAdapterUpdater</span>
      <span class="nf">willDeleteIndexPaths</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSArray</span><span class="o">&lt;</span><span class="n">NSIndexPath</span> <span class="o">*&gt;</span> <span class="o">*</span><span class="p">)</span><span class="nv">indexPaths</span>
            <span class="nf">collectionView</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">UICollectionView</span> <span class="o">*</span><span class="p">)</span><span class="nv">collectionView</span><span class="p">;</span></code></pre>

                        </div>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">listAdapterUpdater</span><span class="p">(</span><span class="n">_</span> <span class="nv">listAdapterUpdater</span><span class="p">:</span> <span class="kt"><a href="../Classes/IGListAdapterUpdater.html">IGListAdapterUpdater</a></span><span class="p">,</span> <span class="n">willDelete</span> <span class="nv">indexPaths</span><span class="p">:</span> <span class="p">[</span><span class="kt">IndexPath</span><span class="p">],</span> <span class="nv">collectionView</span><span class="p">:</span> <span class="kt">UICollectionView</span><span class="p">)</span></code></pre>

                        </div>
                      </div>
                      <div>
                        <h4>Parameters</h4>
                        <table class="graybox">
                          <tbody>
                            <tr>
                              <td>
                                <code>
                                <em>listAdapterUpdater</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The adapter updater owning the transition.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>indexPaths</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>An array of index paths that will be deleted.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>collectionView</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The collection view that will perform the delete.</p>
                                </div>
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </div>
                    </section>
                  </div>
                </li>
                <li class="item">
                  <div>
                    <code>
                    <a name="/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:willMoveFromIndexPath:toIndexPath:collectionView:"></a>
                    <a name="//apple_ref/objc/Method/-listAdapterUpdater:willMoveFromIndexPath:toIndexPath:collectionView:" class="dashAnchor"></a>
                    <a class="token" href="#/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:willMoveFromIndexPath:toIndexPath:collectionView:">-listAdapterUpdater:<wbr>willMoveFromIndexPath:<wbr>toIndexPath:<wbr>collectionView:<wbr></a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Notifies the delegate that the updater will call <code>-[UICollectionView moveItemAtIndexPath:toIndexPath:]</code></p>
<div class="aside aside-note">
    <p class="aside-title">Note</p>
    <p>This event is only sent when outside of <code>-[UICollectionView performBatchUpdates:completion:]</code>.</p>

</div>

                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Objective-C</p>
                          <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">listAdapterUpdater</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/IGListAdapterUpdater.html">IGListAdapterUpdater</a></span> <span class="o">*</span><span class="p">)</span><span class="nv">listAdapterUpdater</span>
     <span class="nf">willMoveFromIndexPath</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSIndexPath</span> <span class="o">*</span><span class="p">)</span><span class="nv">fromIndexPath</span>
               <span class="nf">toIndexPath</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSIndexPath</span> <span class="o">*</span><span class="p">)</span><span class="nv">toIndexPath</span>
            <span class="nf">collectionView</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">UICollectionView</span> <span class="o">*</span><span class="p">)</span><span class="nv">collectionView</span><span class="p">;</span></code></pre>

                        </div>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">listAdapterUpdater</span><span class="p">(</span><span class="n">_</span> <span class="nv">listAdapterUpdater</span><span class="p">:</span> <span class="kt"><a href="../Classes/IGListAdapterUpdater.html">IGListAdapterUpdater</a></span><span class="p">,</span> <span class="n">willMoveFrom</span> <span class="nv">fromIndexPath</span><span class="p">:</span> <span class="kt">IndexPath</span><span class="p">,</span> <span class="n">to</span> <span class="nv">toIndexPath</span><span class="p">:</span> <span class="kt">IndexPath</span><span class="p">,</span> <span class="nv">collectionView</span><span class="p">:</span> <span class="kt">UICollectionView</span><span class="p">)</span></code></pre>

                        </div>
                      </div>
                      <div>
                        <h4>Parameters</h4>
                        <table class="graybox">
                          <tbody>
                            <tr>
                              <td>
                                <code>
                                <em>listAdapterUpdater</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The adapter updater owning the transition.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>fromIndexPath</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The index path of the item that will be moved.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>toIndexPath</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The index path to move the item to.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>collectionView</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The collection view that will perform the move.</p>
                                </div>
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </div>
                    </section>
                  </div>
                </li>
                <li class="item">
                  <div>
                    <code>
                    <a name="/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:willReloadIndexPaths:collectionView:"></a>
                    <a name="//apple_ref/objc/Method/-listAdapterUpdater:willReloadIndexPaths:collectionView:" class="dashAnchor"></a>
                    <a class="token" href="#/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:willReloadIndexPaths:collectionView:">-listAdapterUpdater:<wbr>willReloadIndexPaths:<wbr>collectionView:<wbr></a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Notifies the delegate that the updater will call <code>-[UICollectionView reloadItemsAtIndexPaths:]</code>.</p>
<div class="aside aside-note">
    <p class="aside-title">Note</p>
    <p>This event is only sent when outside of <code>-[UICollectionView performBatchUpdates:completion:]</code>.</p>

</div>

                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Objective-C</p>
                          <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">listAdapterUpdater</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/IGListAdapterUpdater.html">IGListAdapterUpdater</a></span> <span class="o">*</span><span class="p">)</span><span class="nv">listAdapterUpdater</span>
      <span class="nf">willReloadIndexPaths</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSArray</span><span class="o">&lt;</span><span class="n">NSIndexPath</span> <span class="o">*&gt;</span> <span class="o">*</span><span class="p">)</span><span class="nv">indexPaths</span>
            <span class="nf">collectionView</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">UICollectionView</span> <span class="o">*</span><span class="p">)</span><span class="nv">collectionView</span><span class="p">;</span></code></pre>

                        </div>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">listAdapterUpdater</span><span class="p">(</span><span class="n">_</span> <span class="nv">listAdapterUpdater</span><span class="p">:</span> <span class="kt"><a href="../Classes/IGListAdapterUpdater.html">IGListAdapterUpdater</a></span><span class="p">,</span> <span class="n">willReload</span> <span class="nv">indexPaths</span><span class="p">:</span> <span class="p">[</span><span class="kt">IndexPath</span><span class="p">],</span> <span class="nv">collectionView</span><span class="p">:</span> <span class="kt">UICollectionView</span><span class="p">)</span></code></pre>

                        </div>
                      </div>
                      <div>
                        <h4>Parameters</h4>
                        <table class="graybox">
                          <tbody>
                            <tr>
                              <td>
                                <code>
                                <em>listAdapterUpdater</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The adapter updater owning the transition.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>indexPaths</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>An array of index paths that will be reloaded.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>collectionView</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The collection view that will perform the reload.</p>
                                </div>
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </div>
                    </section>
                  </div>
                </li>
                <li class="item">
                  <div>
                    <code>
                    <a name="/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:willReloadSections:collectionView:"></a>
                    <a name="//apple_ref/objc/Method/-listAdapterUpdater:willReloadSections:collectionView:" class="dashAnchor"></a>
                    <a class="token" href="#/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:willReloadSections:collectionView:">-listAdapterUpdater:<wbr>willReloadSections:<wbr>collectionView:<wbr></a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Notifies the delegate that the updater will call <code>-[UICollectionView reloadSections:]</code>.</p>
<div class="aside aside-note">
    <p class="aside-title">Note</p>
    <p>This event is only sent when outside of <code>-[UICollectionView performBatchUpdates:completion:]</code>.</p>

</div>

                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Objective-C</p>
                          <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">listAdapterUpdater</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/IGListAdapterUpdater.html">IGListAdapterUpdater</a></span> <span class="o">*</span><span class="p">)</span><span class="nv">listAdapterUpdater</span>
        <span class="nf">willReloadSections</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSIndexSet</span> <span class="o">*</span><span class="p">)</span><span class="nv">sections</span>
            <span class="nf">collectionView</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">UICollectionView</span> <span class="o">*</span><span class="p">)</span><span class="nv">collectionView</span><span class="p">;</span></code></pre>

                        </div>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">listAdapterUpdater</span><span class="p">(</span><span class="n">_</span> <span class="nv">listAdapterUpdater</span><span class="p">:</span> <span class="kt"><a href="../Classes/IGListAdapterUpdater.html">IGListAdapterUpdater</a></span><span class="p">,</span> <span class="n">willReloadSections</span> <span class="nv">sections</span><span class="p">:</span> <span class="kt">IndexSet</span><span class="p">,</span> <span class="nv">collectionView</span><span class="p">:</span> <span class="kt">UICollectionView</span><span class="p">)</span></code></pre>

                        </div>
                      </div>
                      <div>
                        <h4>Parameters</h4>
                        <table class="graybox">
                          <tbody>
                            <tr>
                              <td>
                                <code>
                                <em>listAdapterUpdater</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The adapter updater owning the transition.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>sections</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The sections that will be reloaded</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>collectionView</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The collection view that will perform the reload.</p>
                                </div>
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </div>
                    </section>
                  </div>
                </li>
                <li class="item">
                  <div>
                    <code>
                    <a name="/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:willReloadDataWithCollectionView:isFallbackReload:"></a>
                    <a name="//apple_ref/objc/Method/-listAdapterUpdater:willReloadDataWithCollectionView:isFallbackReload:" class="dashAnchor"></a>
                    <a class="token" href="#/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:willReloadDataWithCollectionView:isFallbackReload:">-listAdapterUpdater:<wbr>willReloadDataWithCollectionView:<wbr>isFallbackReload:<wbr></a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Notifies the delegate that the updater will call <code>-[UICollectionView reloadData]</code>.</p>

                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Objective-C</p>
                          <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">listAdapterUpdater</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/IGListAdapterUpdater.html">IGListAdapterUpdater</a></span> <span class="o">*</span><span class="p">)</span><span class="nv">listAdapterUpdater</span>
    <span class="nf">willReloadDataWithCollectionView</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">UICollectionView</span> <span class="o">*</span><span class="p">)</span><span class="nv">collectionView</span>
                    <span class="nf">isFallbackReload</span><span class="p">:(</span><span class="n">BOOL</span><span class="p">)</span><span class="nv">isFallbackReload</span><span class="p">;</span></code></pre>

                        </div>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">listAdapterUpdater</span><span class="p">(</span><span class="n">_</span> <span class="nv">listAdapterUpdater</span><span class="p">:</span> <span class="kt"><a href="../Classes/IGListAdapterUpdater.html">IGListAdapterUpdater</a></span><span class="p">,</span> <span class="n">willReloadDataWith</span> <span class="nv">collectionView</span><span class="p">:</span> <span class="kt">UICollectionView</span><span class="p">,</span> <span class="nv">isFallbackReload</span><span class="p">:</span> <span class="kt">Bool</span><span class="p">)</span></code></pre>

                        </div>
                      </div>
                      <div>
                        <h4>Parameters</h4>
                        <table class="graybox">
                          <tbody>
                            <tr>
                              <td>
                                <code>
                                <em>listAdapterUpdater</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The adapter updater owning the transition.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>collectionView</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The collection view that will be reloaded.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>isFallbackReload</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The reload was a fallback because we could not performBatchUpdate</p>
                                </div>
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </div>
                    </section>
                  </div>
                </li>
                <li class="item">
                  <div>
                    <code>
                    <a name="/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:didReloadDataWithCollectionView:isFallbackReload:"></a>
                    <a name="//apple_ref/objc/Method/-listAdapterUpdater:didReloadDataWithCollectionView:isFallbackReload:" class="dashAnchor"></a>
                    <a class="token" href="#/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:didReloadDataWithCollectionView:isFallbackReload:">-listAdapterUpdater:<wbr>didReloadDataWithCollectionView:<wbr>isFallbackReload:<wbr></a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Notifies the delegate that the updater successfully called <code>-[UICollectionView reloadData]</code>.</p>

                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Objective-C</p>
                          <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">listAdapterUpdater</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/IGListAdapterUpdater.html">IGListAdapterUpdater</a></span> <span class="o">*</span><span class="p">)</span><span class="nv">listAdapterUpdater</span>
    <span class="nf">didReloadDataWithCollectionView</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">UICollectionView</span> <span class="o">*</span><span class="p">)</span><span class="nv">collectionView</span>
                   <span class="nf">isFallbackReload</span><span class="p">:(</span><span class="n">BOOL</span><span class="p">)</span><span class="nv">isFallbackReload</span><span class="p">;</span></code></pre>

                        </div>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">listAdapterUpdater</span><span class="p">(</span><span class="n">_</span> <span class="nv">listAdapterUpdater</span><span class="p">:</span> <span class="kt"><a href="../Classes/IGListAdapterUpdater.html">IGListAdapterUpdater</a></span><span class="p">,</span> <span class="n">didReloadDataWith</span> <span class="nv">collectionView</span><span class="p">:</span> <span class="kt">UICollectionView</span><span class="p">,</span> <span class="nv">isFallbackReload</span><span class="p">:</span> <span class="kt">Bool</span><span class="p">)</span></code></pre>

                        </div>
                      </div>
                      <div>
                        <h4>Parameters</h4>
                        <table class="graybox">
                          <tbody>
                            <tr>
                              <td>
                                <code>
                                <em>listAdapterUpdater</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The adapter updater owning the transition.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>collectionView</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The collection view that reloaded.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>isFallbackReload</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The reload was a fallback because we could not performBatchUpdate</p>
                                </div>
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </div>
                    </section>
                  </div>
                </li>
                <li class="item">
                  <div>
                    <code>
                    <a name="/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:collectionView:willCrashWithException:fromObjects:toObjects:diffResult:updates:"></a>
                    <a name="//apple_ref/objc/Method/-listAdapterUpdater:collectionView:willCrashWithException:fromObjects:toObjects:diffResult:updates:" class="dashAnchor"></a>
                    <a class="token" href="#/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:collectionView:willCrashWithException:fromObjects:toObjects:diffResult:updates:">-listAdapterUpdater:<wbr>collectionView:<wbr>willCrashWithException:<wbr>fromObjects:<wbr>toObjects:<wbr>diffResult:<wbr>updates:<wbr></a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Notifies the delegate that the collection view threw an exception in <code>-[UICollectionView performBatchUpdates:completion:]</code>.</p>

                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Objective-C</p>
                          <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">listAdapterUpdater</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/IGListAdapterUpdater.html">IGListAdapterUpdater</a></span> <span class="o">*</span><span class="p">)</span><span class="nv">listAdapterUpdater</span>
            <span class="nf">collectionView</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">UICollectionView</span> <span class="o">*</span><span class="p">)</span><span class="nv">collectionView</span>
    <span class="nf">willCrashWithException</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSException</span> <span class="o">*</span><span class="p">)</span><span class="nv">exception</span>
               <span class="nf">fromObjects</span><span class="p">:(</span><span class="n">nullable</span> <span class="n">NSArray</span> <span class="o">*</span><span class="p">)</span><span class="nv">fromObjects</span>
                 <span class="nf">toObjects</span><span class="p">:(</span><span class="n">nullable</span> <span class="n">NSArray</span> <span class="o">*</span><span class="p">)</span><span class="nv">toObjects</span>
                <span class="nf">diffResult</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/IGListIndexSetResult.html">IGListIndexSetResult</a></span> <span class="o">*</span><span class="p">)</span><span class="nv">diffResult</span>
                   <span class="nf">updates</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/IGListBatchUpdateData.html">IGListBatchUpdateData</a></span> <span class="o">*</span><span class="p">)</span><span class="nv">updates</span><span class="p">;</span></code></pre>

                        </div>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">listAdapterUpdater</span><span class="p">(</span><span class="n">_</span> <span class="nv">listAdapterUpdater</span><span class="p">:</span> <span class="kt"><a href="../Classes/IGListAdapterUpdater.html">IGListAdapterUpdater</a></span><span class="p">,</span> <span class="nv">collectionView</span><span class="p">:</span> <span class="kt">UICollectionView</span><span class="p">,</span> <span class="n">willCrashWith</span> <span class="nv">exception</span><span class="p">:</span> <span class="kt">NSException</span><span class="p">,</span> <span class="n">from</span> <span class="nv">fromObjects</span><span class="p">:</span> <span class="p">[</span><span class="kt">Any</span><span class="p">]?,</span> <span class="n">to</span> <span class="nv">toObjects</span><span class="p">:</span> <span class="p">[</span><span class="kt">Any</span><span class="p">]?,</span> <span class="nv">diffResult</span><span class="p">:</span> <span class="kt"><a href="../Classes/IGListIndexSetResult.html">IGListIndexSetResult</a></span><span class="p">,</span> <span class="nv">updates</span><span class="p">:</span> <span class="kt">ListBatchUpdateData</span><span class="p">)</span></code></pre>

                        </div>
                      </div>
                      <div>
                        <h4>Parameters</h4>
                        <table class="graybox">
                          <tbody>
                            <tr>
                              <td>
                                <code>
                                <em>listAdapterUpdater</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The adapter updater owning the transition.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>collectionView</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The collection view being updated.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>exception</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The exception thrown by the collection view.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>fromObjects</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The items transitioned from in the diff, if any.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>toObjects</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The items transitioned to in the diff, if any.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>diffResult</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The diff result that were computed from <code>fromObjects</code> and <code>toObjects</code>.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>updates</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The batch updates that were applied to the collection view.</p>
                                </div>
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </div>
                    </section>
                  </div>
                </li>
                <li class="item">
                  <div>
                    <code>
                    <a name="/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:didFinishWithoutUpdatesWithCollectionView:"></a>
                    <a name="//apple_ref/objc/Method/-listAdapterUpdater:didFinishWithoutUpdatesWithCollectionView:" class="dashAnchor"></a>
                    <a class="token" href="#/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:didFinishWithoutUpdatesWithCollectionView:">-listAdapterUpdater:<wbr>didFinishWithoutUpdatesWithCollectionView:<wbr></a>
                    </code>
                  </div>
                  <div class="height-container">
                    <div class="pointer-container"></div>
                    <section class="section">
                      <div class="pointer"></div>
                      <div class="abstract">
                        <p>Notifies the delegate that the updater finished without performing any batch updates or reloads</p>

                      </div>
                      <div class="declaration">
                        <h4>Declaration</h4>
                        <div class="language">
                          <p class="aside-title">Objective-C</p>
                          <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">listAdapterUpdater</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/IGListAdapterUpdater.html">IGListAdapterUpdater</a></span> <span class="o">*</span><span class="p">)</span><span class="nv">listAdapterUpdater</span>
    <span class="nf">didFinishWithoutUpdatesWithCollectionView</span><span class="p">:</span>
        <span class="p">(</span><span class="n">nullable</span> <span class="n">UICollectionView</span> <span class="o">*</span><span class="p">)</span><span class="nv">collectionView</span><span class="p">;</span></code></pre>

                        </div>
                        <div class="language">
                          <p class="aside-title">Swift</p>
                          <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">listAdapterUpdater</span><span class="p">(</span><span class="n">_</span> <span class="nv">listAdapterUpdater</span><span class="p">:</span> <span class="kt"><a href="../Classes/IGListAdapterUpdater.html">IGListAdapterUpdater</a></span><span class="p">,</span> <span class="n">didFinishWithoutUpdatesWith</span> <span class="nv">collectionView</span><span class="p">:</span> <span class="kt">UICollectionView</span><span class="p">?)</span></code></pre>

                        </div>
                      </div>
                      <div>
                        <h4>Parameters</h4>
                        <table class="graybox">
                          <tbody>
                            <tr>
                              <td>
                                <code>
                                <em>listAdapterUpdater</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The adapter updater owning the transition.</p>
                                </div>
                              </td>
                            </tr>
                            <tr>
                              <td>
                                <code>
                                <em>collectionView</em>
                                </code>
                              </td>
                              <td>
                                <div>
                                  <p>The collection view that reloaded.</p>
                                </div>
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </div>
                    </section>
                  </div>
                </li>
              </ul>
            </div>
          </section>
        </section>
        <section id="footer">
          <p>&copy; 2023 <a class="link" href="https://twitter.com/MetaOpenSource" target="_blank" rel="external noopener">Instagram</a>. All rights reserved. (Last updated: 2023-04-07)</p>
          <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external noopener">jazzy ♪♫ v0.14.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external noopener">Realm</a> project.</p>
        </section>
      </article>
    </div>
  </body>
</html>
